Flash ThunderBoot on your board
Content:
The purpose of this document is to explain how to flash the Thunderboot from scratch.
The ThunderBoot program is a standalone software that initializes the AT91RM9200 processor and display a prompt for an interactive mode (cf Siap-Boot user guide).
The user is prompted to enter commands on the command line.
The commands allow the processor to read/modify memory areas, to set environment variables, to download data from the serial port or from the Ethernet interface.
The main features are:
- Standalone primary boot
- OS independent
- AutoBoot and interactive mode
- Command line interface
- Non volatile environment variables
- Flash program capability
- Download through serial port (Kermit protocol)
- Download through Ethernet (tftp)
- Scripting capability
The ThunderBoot is flashed at 0x10000000 in the flash on CS0.
3-Flashing the thunderboot with ARM AXD
3-1 Hardware and software requirements
- A PC running AXD (arm debugger)
- A Multi-ice
- A serial cable (Null modem)
- An Ethernet cable (not mandatory)
3-2 How to flash?
3-2-1- Loader
Connect the serial port of your PC to the “SERIAL DEBUG PORT” on AT91RM9200DK
Connect the multi-ice to your PC and to the AT91RM9200DK Jtag/ice interface
Run the multi-ice server (AT91RM900.cfg)
Run AXD and load the image “loader.bin” at 0x200000
On AXD, run the application in command line interface.
- debug>setpc 0x200000
- debug>r
Launch hyperterminal application on your PC (115200, 8, N, 1)
The “Loader” application starts an xmodem protocol.
On hyperterminal, send the file “AT91RM9200boot.bin” with the Xmodem protocol.
On hyperterminal console, send Command file.
4-Flashing the thunderboot with Green Hills Multi 2000
4-1 Hardware and software requirements
- A PC running Green Hills Mult2000 (debugger)
- A following ICE interface: Green Hills Probe or Green Hills Slingshot or ARM Ltd Multi-ice
- A serial cable (Null modem)
- An Ethernet cable (not mandatory)
4-2 How to flash?
4-2-1- Loader
Connect the serial port of your PC to the “SERIAL DEBUG PORT” on AT91RM9200DK
Connect the ICE Interface to your PC and to the AT91RM9200DK Jtag/ice interface
Run the MULTI
Open on MULTI a empty project (ei JTAG-TEST)
Open MULTI debug
Load loop project only for set the ICE debuger
load the image “loader.bin” at 0x200000
In command pane window (prompt MULTI>) write the following command.
MULTI>memload raw c:(PATH)\flash\loader.bin 0x0200000
On MULTI, run the application in command line interface.
MULTI>c
Launch hyperterminal application on your PC (115200, 8, N, 1)
The “Loader” application starts an xmodem protocol.
On hyperterminal, send the file “AT91RM9200boot.bin” with the Xmodem protocol.
On hyperterminal console, send Command file.
5- hyperterminal Commands to flash
At the end of Xmodem, hyperterminal displays a prompt (AT91RM9200-DK>).
If this promt is not display press return before the end auto boot Hit any key to stop autoboot: 0
Enter the following command (bold):
AT91RM9200-DK>protect off all
The next step is to load the flash image in SDRAM and to copy it in flash. This is done through the serial port (Kermit protocol on hypertyerminal).
Load the firmware.
The file to load is “AT91RM9200boot.img” or you can load your Application binary file.
AT91RM9200-DK>loadb 20000000
## Ready
for binary (Kermit) download …
## Start
Addr =0x20000000
At this step the thunderboot image is loaded in SDRAM. The
next commands erase the flash and copy the SDRAM (20000000) to flash
(10000000).
AT91RM9200-DK>erase all
Erasing
sector 1 … ok
Erasing
sector 39 … ok
Done
AT91RM9200-DK>cp.b 20000000 10000000 10000
Copy to
flash… done.
AT91RM9200-DK>protect
on 10000000 1000ffff
Protected
6 sectors
AT91RM9200-DK>
The thunderboot is flashed. You can disconnect the ice interface and reboot your board.